package com.onesports.intelligent.k12.polarlight.domain.entity.course;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;

import com.onesports.intelligent.k12.polarlight.common.domain.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.ibatis.type.ArrayTypeHandler;
import org.apache.ibatis.type.JdbcType;

import java.io.Serializable;
import java.util.Date;

/**
 * ${comments}
 *
 * @author
 * @since 1.0.0 2022-07-08
 */
@Data
@EqualsAndHashCode(callSuper=false)
@TableName(value = "course_schedule" ,autoResultMap = true)
public class CourseSchedule extends BaseEntity implements Serializable {
	private static final long serialVersionUID = 1L;

    /**
     * 校区id
     */
	private String campusId;
    /**
     * 课表名称
     */
	private String scheduleName;
    /**
     * 课程配置id
     */
	private String courseId;
    /**
     * 方式：1按星期  2：按日期
     */
	private String courseType;
    /**
     * 上课开始日期
     */
	private Date startDate;
    /**
     * 上课结束日期
     */
	private Date endDate;
    /**
     * 星期code数组
     */
	@TableField(value = "week_code",typeHandler = ArrayTypeHandler.class,jdbcType = JdbcType.ARRAY)
	private String[] weekCode;
    /**
     * 课表节次总数
     */
	private Integer totalNum;
    /**
     * 机构id
     */
	private String organizationId;
    /**
     * 签到数量
     */
	private Integer signUpNum;
    /**
     * 请假数量
     */
	private Integer absentNum;
    /**
     * 请假数量
     */
	private Integer leaveNum;
    /**
     * 发布状态
     */
	private Boolean publishStatus;
}
